Find the second largest numberΒΆ
Find the second largest number in a list.
def second_largest(numbers):
if len(L) < 2:
return
if len(L) == 2 and L[0] == L[1]:
return
dup_items = set()
uniq_items = []
for x in L:
if x not in dup_items:
uniq_items.append(x)
dup_items.add(x)
uniq_items.sort()
return uniq_items[-2]
# test
print(second_largest([1,2,3,4,4])) # 3
print(second_largest([1, 1, 1, 0, 0, 0, 2, -2, -2])) # 1
print(second_largest([2,2])) # None
print(second_largest([1])) # None